import { Observer } from "@/utils/observer/Observer";
import { Message } from 'element-ui';

/**
 * 消息观察者 -- 头部信息
 */
class SetDateObserverBiz extends Observer {
  constructor(self, deviceInfo = {}, item) {
    super();
    // 外部组件
    this.deviceInfo = deviceInfo;
    this.catcheInfo = self;
    this.currentInfo = item;
  }

  /**
   * 消息监听入口
   * @param bizType
   * @param msgContent
   */
  update(bizType, msgContent) {
    switch (bizType) {
      // 安卓调用扫码报到
      case "setDate":
        this.setDate(msgContent);
        break;
    }
  }

  /**
   * 更新同步时间信息
   * @param obj
   */
  setDate(obj) {
    let self = this.catcheInfo;
    try {
      const formRef = self.$refs['vFormRef'];
      if (formRef) {
        formRef.executeChildMethod(this.currentInfo?.id, "headerInfo", obj);
        formRef.executeChildMethod(this.currentInfo?.id, "setDate", obj);
      }
    } catch (e) {
      self.handleException("sdkBizServices", "内部组件异常 -- setDate -- >", JSON.stringify(e.stack));
    }

  }
}

export { SetDateObserverBiz };
